#ifndef JSON_ANALYSIS_H
#define JSON_ANALYSIS_H
#include <cjson/cJSON.h>

/**
 * cjson对象序列化成字符串，cjson转string转字符串
 * @param json cJSON对象
 * @return json string字符串
 */
char *json_to_string(cJSON *json);

/**
 * 字符串转cjson对象，string转cjson
 * @param json json string字符串
 * @return cJSON对象
 */
cJSON *string_parse_to_jsno(char *json_string);

/**
 * 获取cJSON对象的字符串字段的值
 * @param json	cJSON对象
 * @param key	字段名称
 * @param nullAble	返回值是否可以为NULL
 * @return 指向字符数组的指针，类型为char *，在C中用作字符串，必须以\0字符结尾，\0字符占字符数组1个长度。
 */
char *analysisCJSONString(const cJSON *const json, const char *const key, _Bool nullAble);
char *getCJSONString(const cJSON *const json, const char *const key);


/**
 * 获取cJSON对象的int字段的数字值
 * @param json	cJSON对象
 * @param key	字段名称
 * @return 数字值，整型数值
 */
int getCJSONInt(const cJSON *const json, const char *const key);

#endif // JSON_ANALYSIS_H
